#ifndef CHESSPIECE_H
#define CHESSPIECE_H

#include <QGraphicsEllipseItem>

class ChessPiece : public QGraphicsEllipseItem
{
public:
    explicit ChessPiece(double sx,double sy,double r,int id) ;
    ~ChessPiece();

    void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget);
    void initChessPiece(const QString testName,double cx,double cy,int side,int kind);
    void newPos(double cx,double cy);

    void setSelected(bool b);
    int getId() const;



    double getCx() const;
    double getCy() const;

    QString getTextName() const;
    int getSide() const;

    int getKind() const;

private:

    //棋盘开始位置
    double sx;
    double sy;

    //棋子在棋盘的相对位置 单位为d, cx,cy取整数
    double cx;
    double cy;

    //棋子显示文本
    QString textName;

    //棋子大小
    double r;

    //棋子颜色 0黑色 1 红色
    int side;

    //棋子id
    int id;

    int kind;


    //ture选中, false 未选中
    bool selected=false;






    // QGraphicsItem interface
protected:
    void mousePressEvent(QGraphicsSceneMouseEvent *event);
};

#endif // CHESSPIECE_H
